#ifndef _FPDF_EMB_PENCIL_H_
#define _FPDF_EMB_PENCIL_H_

#ifdef __cplusplus
extern "C" {
#endif

FPDFEMB_RESULT FPDFEMB_Annot_GetIndexAtPosEx(FPDFEMB_PAGE page, int x, int y, int* index, 
											 int type, int startindex, int next);
FPDFEMB_RESULT FPDFEMB_Annot_GetAtIndex(FPDFEMB_PAGE page, int index, int* indexinpage);

FPDFEMB_RESULT FPDFEMB_Annot_GetData(FPDFEMB_PAGE page, int index, void* buffer, int* bufsize);
FPDFEMB_RESULT FPDFEMB_Annot_Insert(FPDFEMB_PAGE page, int index, int type, void* buffer, int bufsize);

FPDFEMB_RESULT FPDFEMB_Pencil_GetLineCount(FPDFEMB_PAGE page, int pencilindex, int* count);
FPDFEMB_RESULT FPDFEMB_Pencil_GetLineIndexAtPos(FPDFEMB_PAGE page, int pencilindex, 
												int x, int y, int* lineindex);
FPDFEMB_RESULT FPDFEMB_Pencil_GetLineData(FPDFEMB_PAGE page, int pencilindex, int lineindex, 
										  void* buffer, int* bufsize);
FPDFEMB_RESULT FPDFEMB_Pencil_DeleteLine(FPDFEMB_PAGE page, int pencilindex, int lineindex);
FPDFEMB_RESULT FPDFEMB_Pencil_InsertLine(FPDFEMB_PAGE page, int pencilindex, int* lineindex,
										 void* buffer, int bufsize);

FPDFEMB_RESULT FPDFEMB_HaveSignatureOnPage(FPDFEMB_PAGE page, FPDFEMB_BOOL* bhave);
FPDFEMB_RESULT FPDFEMB_RemoveSignatureFromPage(FPDFEMB_PAGE page);
FPDFEMB_RESULT FPDFEMB_DeletePage(FPDFEMB_DOCUMENT document, int index);
FPDFEMB_RESULT FPDFEMB_CreateNewPage(FPDFEMB_DOCUMENT document, int index, FPDFEMB_BITMAP dib, 
									 int width, int height, int quality);

FPDFEMB_RESULT FPDFEMB_Annot_ResetTempData(int type, void* buffer, int bufsize);

#ifdef __cplusplus
}
#endif

#endif // _FPDF_EMB_PENCIL_H_